package com.power.service;

import com.power.domain.Basket;
import com.baomidou.mybatisplus.extension.service.IService;
import com.power.vo.CartTotalAmount;
import com.power.vo.CartVo;

import java.util.List;

/**
* @author dingchunlin
* @description 针对表【basket(购物车)】的数据库操作Service
* @createDate 2024-07-10 15:12:13
*/
public interface BasketService extends IService<Basket> {

    /**
     * 根据openId查询购物车中商品数量
     * @param openId 会员openId
     * @return 购物车中商品数量
     */
    Integer queryMemberBasketProdCount(String openId);

    /**
     * 根据openId查询购物车信息
     * @return 购物车信息
     */
    CartVo queryMemberCartVo();


    /**
     * 计算会员选中购物车中商品的总价
     * @param basketIds 选中的购物车商品id
     * @return 购物车商品总价
     */
    CartTotalAmount calculateMemberCheckedBasketTotalAmount(List<Long> basketIds);

    /**
     * 修改购物车商品数量
     * @param basket 购物车商品信息
     * @return 修改结果
     */
    Boolean changeMemberBasketItem(Basket basket);
}
